Big Data and Analytics Data Filtering এবং Sorting এর জন্য VBA গাইড ও নোট

338

Data Filtering এবং Sorting এক্সেল শীটে ডেটাকে আরও কার্যকরভাবে বিশ্লেষণ এবং উপস্থাপন করার জন্য অত্যন্ত গুরুত্বপূর্ণ ফিচার। VBA (Visual Basic for Applications) ব্যবহার করে আপনি এই কাজগুলোকে স্বয়ংক্রিয়ভাবে করতে পারেন, যার মাধ্যমে বড় আকারের ডেটাসেটকে সহজে ম্যানেজ এবং বিশ্লেষণ করা সম্ভব হয়।


Data Filtering VBA দিয়ে করা

Data Filtering এক্সেল এর একটি শক্তিশালী ফিচার, যা ব্যবহারকারীদের নির্দিষ্ট মানের ভিত্তিতে ডেটা ফিল্টার করতে সহায়তা করে। VBA কোড ব্যবহার করে আপনি খুব সহজেই ডেটা ফিল্টার করতে পারেন। নীচে একটি উদাহরণ দেওয়া হলো যেখানে নির্দিষ্ট কলামের মধ্যে কিছু শর্তে ফিল্টার করা হয়েছে।

উদাহরণ ১: একটি সিঙ্গেল কলামের ফিল্টার প্রয়োগ করা

Sub ApplyFilter()
    ' সেল A1 থেকে শুরু করে A10 পর্যন্ত ফিল্টার প্রয়োগ করা হবে
    Range("A1:A10").AutoFilter Field:=1, Criteria1:=">50"
End Sub

এখানে, Field:=1 মানে প্রথম কলামের (A কলাম) উপর ফিল্টার প্রয়োগ করা হচ্ছে। Criteria1:=">50" মানে ফিল্টার শর্ত হলো যে, কেবলমাত্র ৫০ এর বেশি মানগুলো প্রদর্শিত হবে।

উদাহরণ ২: একাধিক শর্তে ফিল্টার প্রয়োগ করা

Sub ApplyMultipleFilters()
    ' সেল A1 থেকে শুরু করে A10 পর্যন্ত ফিল্টার প্রয়োগ করা হবে
    Range("A1:A10").AutoFilter Field:=1, Criteria1:=">50", Operator:=xlAnd, Criteria2:="<100"
End Sub

এখানে, প্রথম কলামে (A1:A10) এমন সব ডেটা ফিল্টার করা হবে যার মান ৫০ এর বেশি এবং ১০০ এর কম।

উদাহরণ ৩: ফিল্টার মুছে ফেলা

Sub RemoveFilter()
    ' ফিল্টার মুছে ফেলুন
    If ActiveSheet.AutoFilterMode Then
        ActiveSheet.AutoFilterMode = False
    End If
End Sub

এই কোডটি ফিল্টার প্রয়োগ করা থাকলে সেটি মুছে ফেলবে।


Data Sorting VBA দিয়ে করা

Data Sorting মানে হলো এক্সেল শীটে ডেটা ক্রম অনুযায়ী সাজানো। VBA কোড ব্যবহার করে আপনি ডেটা Ascending বা Descending অর্ডারে সাজাতে পারেন। নীচে কিছু উদাহরণ দেওয়া হলো।

উদাহরণ ১: একটি কলাম Ascending (ছোট থেকে বড়) অর্ডারে সাজানো

Sub SortAscending()
    ' সেল A1 থেকে শুরু করে A10 পর্যন্ত ডেটা Ascending অর্ডারে সাজানো হবে
    Range("A1:A10").Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlYes
End Sub

এখানে, Order1:=xlAscending ডেটাকে Ascending অর্ডারে সাজানোর নির্দেশ দেয়। Header:=xlYes মানে, প্রথম সেলটি (A1) হেডার হিসেবে ধরা হবে এবং এটি সাজানোর মধ্যে আসবে না।

উদাহরণ ২: একটি কলাম Descending (বড় থেকে ছোট) অর্ডারে সাজানো

Sub SortDescending()
    ' সেল A1 থেকে শুরু করে A10 পর্যন্ত ডেটা Descending অর্ডারে সাজানো হবে
    Range("A1:A10").Sort Key1:=Range("A1"), Order1:=xlDescending, Header:=xlYes
End Sub

এখানে, Order1:=xlDescending ডেটাকে Descending অর্ডারে সাজানোর নির্দেশ দেয়।

উদাহরণ ৩: একাধিক কলাম দিয়ে Sorting

Sub SortMultipleColumns()
    ' প্রথমে A কলাম এবং তারপর B কলামের উপর ভিত্তি করে সাজানো হবে
    Range("A1:B10").Sort Key1:=Range("A1"), Order1:=xlAscending, Key2:=Range("B1"), Order2:=xlDescending, Header:=xlYes
End Sub

এখানে, প্রথমে A1:A10 রেঞ্জ Ascending অর্ডারে সাজানো হবে এবং তারপর B1:B10 রেঞ্জ Descending অর্ডারে সাজানো হবে।

উদাহরণ ৪: একাধিক কলাম নিয়ে ডেটা সাজানো (Multiple Levels)

Sub SortMultipleColumnsLevels()
    ' প্রথমে A কলাম, তারপর B কলাম এবং তারপর C কলাম অনুযায়ী সাজানো হবে
    Range("A1:C10").Sort Key1:=Range("A1"), Order1:=xlAscending, Key2:=Range("B1"), Order2:=xlDescending, Key3:=Range("C1"), Order3:=xlAscending, Header:=xlYes
End Sub

এখানে, A1:A10 প্রথমে Ascending অর্ডারে সাজানো হবে, তারপর B1:B10 Descending অর্ডারে এবং শেষদিকে C1:C10 Ascending অর্ডারে সাজানো হবে।


Filtering এবং Sorting একসাথে ব্যবহার

Filtering এবং Sorting একসাথে ব্যবহার করলে আপনি আরও বেশি নিয়ন্ত্রণ পেতে পারেন। নীচে একটি উদাহরণ দেওয়া হলো যেখানে প্রথমে ফিল্টার প্রয়োগ করা হয়েছে এবং তারপর সেগুলো সাজানো হয়েছে।

উদাহরণ ১: Filtering এবং Sorting একসাথে

Sub FilterAndSort()
    ' প্রথমে ফিল্টার প্রয়োগ করা হচ্ছে
    Range("A1:A10").AutoFilter Field:=1, Criteria1:=">50"
    
    ' তারপর সাজানো হচ্ছে
    Range("A1:A10").Sort Key1:=Range("A1"), Order1:=xlDescending, Header:=xlYes
End Sub

এখানে, প্রথমে A1:A10 রেঞ্জে ৫০ এর বেশি মানের ফিল্টার প্রয়োগ করা হবে এবং তারপর সেগুলো Descending অর্ডারে সাজানো হবে।


সারাংশ

VBA ব্যবহার করে এক্সেলে Data Filtering এবং Sorting করা খুবই সহজ এবং সময় সাশ্রয়ী। আপনি নির্দিষ্ট শর্তের ভিত্তিতে ডেটা ফিল্টার করতে এবং তারপর তা Ascending বা Descending অর্ডারে সাজাতে পারেন। VBA কোড ব্যবহার করে একাধিক কলামও সাজানো সম্ভব এবং একই সময়ে ফিল্টার প্রয়োগ করা যেতে পারে। এইসব ফিচার আপনার কাজকে আরও দ্রুত এবং কার্যকরী করে তোলে, বিশেষত যখন আপনার কাছে বিশাল ডেটাসেট থাকে।

Content added By
Promotion

Are you sure to start over?

Loading...